package com.lvmama.rhino.mapper;

import java.util.List;

import com.lvmama.rhino.entity.CommonStatisticsSqlVO;
import com.lvmama.rhino.entity.DeviceStatisticsSqlVO;
import com.lvmama.rhino.entity.NettypeStatisticsSqlVO;
import com.lvmama.rhino.entity.RegionStatisticsSqlVO;
import com.lvmama.rhino.entity.StatisticsSqlVO;
import com.lvmama.rhino.pojo.CodeNode;
import com.lvmama.rhino.pojo.CommonStatisticsResult;
import com.lvmama.rhino.pojo.DeviceStatisticsResult;
import com.lvmama.rhino.pojo.FlowStatisticsResult;
import com.lvmama.rhino.pojo.NettypeStatisticsResult;
import com.lvmama.rhino.pojo.RegionStatisticsResult;
import com.lvmama.rhino.pojo.TreeNodeView;

public interface TreeStatisticsMapper {

    /**
     * 查询树状图的所有节点
     */
    List<TreeNodeView> QueryAllTreeNodeView();
    
    /**
     * 查询code码的所有节点
     */
    List<CodeNode> QueryAllCodeNode();

    /**
     * 插入树结构表
     */
    void insertTreeNodeView(TreeNodeView treeNodeView);
    
    /**
     * 删除单个节点
     */
    void deleteTreeNodeView(TreeNodeView treeNodeView);
    
    List<String> QueryDataByNode();
    
    /**
     * 查询树状图节点的流量显示数据
     */
    List<FlowStatisticsResult> QueryFlowSticsResByNode(StatisticsSqlVO ssvo);
    
    /**
     * 
    * @Title: QueryFSConversion 
    * @Description: 查询流量转化率表，得到节点的百分比和统计总数
    * @param @param ssvo
    * @return List<FlowStatisticsResult>    返回类型 
    * @throws
     */
    List<FlowStatisticsResult> QueryFSConversion(StatisticsSqlVO ssvo);
    
    /**
     * 
    * @Title: QueryDeviceFS 
    * @Description: 查询流量包中的设备属性统计信息
    * @param @param ss
     */
	public List<DeviceStatisticsResult> QueryDeviceFS(DeviceStatisticsSqlVO ss);
	
	/**
     * 
    * @Title: QueryDeviceFS 
    * @Description: 查询流量包中的网络运营商信息统计
    * @param @param ss
     */
	public List<NettypeStatisticsResult> QueryNettypeFS(NettypeStatisticsSqlVO ss) ;
	
	/**
     * 
    * @Title: QueryDeviceFS 
    * @Description: 查询流量包中的省份地域信息
    * @param @param ss
     */
	public List<RegionStatisticsResult> QueryRegionFS(RegionStatisticsSqlVO ss) ;
	
	public List<CommonStatisticsResult> QueryCommonFS(CommonStatisticsSqlVO ss) ;
}
